package me.xiaolei.float_window

import android.content.Context
import android.os.Bundle

/**
 * 显示事件
 */
fun interface OnShowListener
{
    fun onShow(holder: ViewHolder)
}

/**
 * 更新的监听
 */
fun interface OnUpdateListener
{
    fun onUpdate(binder: Bundle, holder: ViewHolder)
}

/**
 * 隐藏的回调
 */
fun interface OnHideListener
{
    fun onHide(holder: ViewHolder)
}

/**
 *  销毁的回调
 */
fun interface OnDestroyListener
{
    fun onDestroy(holder: ViewHolder)
}

/**
 * 权限适配器
 */
interface PermissionAdapter
{
    /**
     * 是否有权限
     */
    fun hasPermission(context: Context): Boolean

    /**
     * 请求权限
     */
    fun startRequestPermission(context: Context, callback: OnPermissionResult)
}

/**
 * 权限申请的结果回调
 */
fun interface OnPermissionResult
{
    fun onResult(result: Boolean)
}

/**
 * 坐标更新事件监听
 */
fun interface OnPositionUpdateListener
{
    fun onUpdate(x: Int, y: Int)
}